package root.message;

import java.util.ArrayList;
import java.util.List;

import root.user.User;

/**
 * Topico de uma mensagem
 * @author phyllipe
 *
 */
public class MessageTopic {
	private User user;
	private String subject;
	private List<Message> messages;
	private MessageType messageType;
	public MessageTopic(User user, String subject, MessageType messageType) {
		if (subject == null) {
			//Invalid Subject?
		}
		this.messageType = messageType;
		this.subject = subject;
		this.user = user;
		messages = new ArrayList<Message>();
	}
	/**
	 * Retorna o tipo do tópico
	 * @return
	 */
	public MessageType getType() {
		return messageType;
	}
	/**
	 * Retorna o assunto do tópico
	 * @return
	 */
	public String getSubject() {
		return subject;
	}
	
	/**
	 * Retorna a lista de mensagens que fazem parte do tópico.
	 * @return
	 */
	public List<Message> getMessages() {
		return messages;
	}
	/**
	 * Retorna o usuário dono do tópico.
	 * @return
	 */
	public User getUser() {
		return user;
	}
	
	/**
	 * Adiciona uma mensagem no tópico
	 * @param message
	 * 	Mensagem a ser criada
	 */
	public void addMessage(Message message) {
		messages.add(message);
	}
}
	
	
